package com.vogue.supplymall.common.domain.dto;

import java.io.Serializable;
import java.util.List;

/**
 * 多单合并支付数据封装DTO
 * @author cy
 */
public class MultiplePayInfo implements Serializable {

    private static final long serialVersionUID = 8536060699748155948L;
    
    /**
     * 统一支付方式 0:线下 1:吾享(商龙云钱包) 2:微信 3:支付宝 4:预付货款
     */
    private Integer unificationPayment;
    
    /**
     * 支付成功页面重定向地址
     */
    private String redirectUrl;
    
    /**
     * 合并支付的订单列表集合
     */
    private List<MultiplePayOrderInfo> orders;

    /**
     * @return 统一支付方式
     */
    public Integer getUnificationPayment() {
        return unificationPayment;
    }

    /**
     * 设置 统一支付方式
     * @param unificationPayment 0:线下 1:吾享(商龙云钱包) 2:微信 3:支付宝 4:预付货款
     */
    public void setUnificationPayment(Integer unificationPayment) {
        this.unificationPayment = unificationPayment;
    }

    /**
     * @return 支付成功页面重定向地址
     */
    public String getRedirectUrl() {
        return redirectUrl;
    }

    /**
     * 设置 支付成功页面重定向地址
     * @param redirectUrl 支付成功页面重定向地址
     */
    public void setRedirectUrl(String redirectUrl) {
        this.redirectUrl = redirectUrl;
    }
    
    /**
     * @return 合并支付的订单列表集合
     */
    public List<MultiplePayOrderInfo> getOrders() {
        return orders;
    }

    /**
     * 设置 合并支付的订单列表集合
     * @param orders 合并支付的订单列表集合
     */
    public void setOrders(List<MultiplePayOrderInfo> orders) {
        this.orders = orders;
    }
    
    /**
     * 字符串格式化
     */
    @Override
    public String toString() {
        StringBuffer strbuf = new StringBuffer("");
        for (MultiplePayOrderInfo orderInfo : orders) {
            strbuf.append(orderInfo.toString()).append(",");
        }
        String ordersStr = "[";
        if (strbuf.length() > 0) {
            ordersStr += strbuf.substring(0, strbuf.length() - 1);
        }
        ordersStr += "]";
        return String.format("{\"unificationPayment\":%d, \"redirectUrl\":\"%s\", \"orders\":%s}", unificationPayment, redirectUrl, ordersStr);
    }
}
